Report system#305
Conversation
|
Tu pourrais remplacer /report create par juste /report ? |
Fait |
|
Deux chose stp:
|
Bien reçu, je fais ça rapidement ! |
Ceci dit, j'aimerais bien comprendre à quoi sert le cache ? En terme d'optimisation, qu'il y ait 10 requêtes réparties sur la journée ou 10 d'un coup à l'arrêt du serveur ça revient au même ? De plus, si j'implémente une mise en cache, en cas d'un arrêt inopiné du serveur, on perd l'équivalent de l'uptime en data des reports. Tandis qu'avec le système actuel on est sûr de pas avoir de rollback de données. |
Je pense qu'on aimerait éviter un deuxième problème de perf comme avec le /team list, des malins pourraient s'amuser à spammer la commande pour intentionnellement faire lag le serv. Sinon, tu peux essayer de faire une task (qui tournerait toutes les 10-20 minutes par exemple) qui check si la liste des reports a changé, si oui, ça part en DB, si non, on ne fait rien (ajoute quand même l'enregistrement en DB lors du shut down du serv au cas où). |
Le truc c'est qu'en dehors de la commande /report (qui est facilement modifiable pour la rendre inspammable) les /report history, et /report see vont forcément devoir faire appel à la db sauf si je charge TOUTE la table de la db en cache au démarrage du serv ce qui est encore moins optimisé. Donc je pense qu'on gagnerait plus à juste mettre des garde-fou sur les commandes pour pas qu'elle puisse être spam. |
|
nan c'est mieux au démarrage |
|
Car en gros la ce que tu fait c'est que pour chaque commande tu fait un requests db et si il y a 100 joueurs dans le report ça va poser problème |
…également en charge le report de joueur hors-ligne.
Je viens de commit ces deux modifs. |
Implémentation de la V1 du système de signalement des joueurs au comportement ne respectant pas les règles du serveur.
Commandes joueurs :
/report -- Signale un joueur pour le motif spécifié
/report history -- Permet d'afficher tous les signalement que l'on a fait
Commandes modos :
/report see -- Affiche les signalements reçus par le joueur
/report toplist -- Affiche les 5 joueurs les plus signalés
/report clear -- Efface les signalements reçus par le joueur en question